package cn.csc.module.order.controller.admin.item.vo;

import cn.csc.framework.common.pojo.PageParam;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.EqualsAndHashCode;
import lombok.ToString;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigInteger;
import java.time.LocalDateTime;

import static cn.csc.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

@ApiModel("管理后台 - 订单项分页 Request VO")
@Data
@EqualsAndHashCode(callSuper = true)
@ToString(callSuper = true)
public class OrderItemPageReqVO extends PageParam {
    @ApiModelProperty(value = "店铺id")
    private BigInteger shopId;

    @ApiModelProperty(value = "订单id")
    private BigInteger orderId;

    @ApiModelProperty(value = "分类id")
    private BigInteger categoryId;

    @ApiModelProperty(value = "产品ID")
    private BigInteger spuId;

    @ApiModelProperty(value = "产品SkuID")
    private BigInteger skuId;

    @ApiModelProperty(value = "用户Id")
    private BigInteger userId;

    @ApiModelProperty(value = "购物车产品个数")
    private Integer count;

    @ApiModelProperty(value = "产品名称")
    private String spuName;

    @ApiModelProperty(value = "sku名称")
    private String skuName;

    @ApiModelProperty(value = "产品主图片路径")
    private String pic;

    @ApiModelProperty(value = "单个orderItem的配送类型1.快递物流(默认）,2.送货上门,3.自提")
    private Byte deliveryType;

    @ApiModelProperty(value = "加入购物车时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] shopCartTime;

    @ApiModelProperty(value = "产品价格")
    private BigInteger price;

    @ApiModelProperty(value = "商品总金额")
    private BigInteger spuTotalAmount;

    @ApiModelProperty(value = "创建时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime[] createTime;

}
